The approaches described in this section could be pursued but are not necessarily approaches that have previously been conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
Network servicing nodes such as server load balancers, application delivery controllers, or traffic managers can facilitate service sessions between a plurality of client devices and a plurality of servers. These servicing nodes can typically balance loads among servers servicing Web documents, voice calls, advertisements, enterprise applications, video streaming services, file transfers, gaming, or any broadband services. In a typical deployment scenario, a client service session terminates in a servicing node that can relay the client service session data to an intended service using a server service session. The servicing node can usually provide additional processing based on service and security policies while relaying the data between the client and the server.
The service nodes can be connected in scalable clusters. The scalable clusters can be utilized by a carrier-grade NAT (CGN) based network. Currently, traffic distribution between nodes in a cluster is carried out by using a hashing mechanism based on the source IP address and other parameters. Therefore, only one node in the cluster may process traffic from a particular Internet Protocol (IP) address and only this one node has the full context information required for the processing. The distribution of traffic between nodes includes an external distribution component, such as a hashing-based router, and an internal component, located in the cluster. The external component may not be aware of which node has the context information for the traffic from the IP address. The internal component may keep information as to which of the nodes has the context information for this traffic and send the traffic to a node responsible for processing the traffic. However, there is a probability that traffic will be sent to another node that is not responsible for processing of this traffic. Because another node may not have context information for processing the traffic, the traffic must be redirected to the correct node. To eliminate redirection for the downstream traffic, the cluster nodes must advertise to the upstream router the correct path to the node that processes the traffic for the particular NAT IP. The amount of redirection might significantly increase during a cluster's resizing and failovers. Due to the need for redirections, the cluster nodes must spend significant computing and network resources for delivering data traffic when redirection is required and advertising to the routers to reduce the number of redirections.